home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 2: Applications / Linux Cubed Series 2 - Applications.iso / misc / ispell-3.001 / ispell-3~ / ispell-3.1 / languages / english / Makefile < prev    next >
Makefile  |  1995-10-12  |  18KB  |  592 lines

  1. #
  2. # $Id: Makefile,v 1.23 1995/08/05 23:19:50 geoff Exp $
  3. #
  4. # Copyright 1993, Geoff Kuenning, Granada Hills, CA
  5. # All rights reserved.
  6. #
  7. # Redistribution and use in source and binary forms, with or without
  8. # modification, are permitted provided that the following conditions
  9. # are met:
  10. #
  11. # 1. Redistributions of source code must retain the above copyright
  12. #    notice, this list of conditions and the following disclaimer.
  13. # 2. Redistributions in binary form must reproduce the above copyright
  14. #    notice, this list of conditions and the following disclaimer in the
  15. #    documentation and/or other materials provided with the distribution.
  16. # 3. All modifications to the source code must be clearly marked as
  17. #    such.  Binary redistributions based on modified source code
  18. #    must be clearly marked as modified versions in the documentation
  19. #    and/or other materials provided with the distribution.
  20. # 4. All advertising materials mentioning features or use of this software
  21. #    must display the following acknowledgment:
  22. #      This product includes software developed by Geoff Kuenning and
  23. #      other unpaid contributors.
  24. # 5. The name of Geoff Kuenning may not be used to endorse or promote
  25. #    products derived from this software without specific prior
  26. #    written permission.
  27. #
  28. # THIS SOFTWARE IS PROVIDED BY GEOFF KUENNING AND CONTRIBUTORS ``AS IS'' AND
  29. # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  30. # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  31. # ARE DISCLAIMED.  IN NO EVENT SHALL GEOFF KUENNING OR CONTRIBUTORS BE LIABLE
  32. # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  33. # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  34. # OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  35. # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  36. # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  37. # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  38. # SUCH DAMAGE.
  39. #
  40. # This Makefile is an example of how to build dictionaries for a
  41. # complex language with many variants.  It supports both American and
  42. # British English and four dictionary source files, and will build up
  43. # to 8 dictionares from those 4 files by combining them with an
  44. # optional installation-specific file.
  45. #
  46. # If you are building a new Makefile for your own language, this is
  47. # probably not the right place to start.  Instead, you should select
  48. # the "deutsch" Makefile, which is moderately complex, or one of the
  49. # simple Makefiles for another language distributed with ispell.
  50. #
  51. # $Log: Makefile,v $
  52. # Revision 1.23  1995/08/05  23:19:50  geoff
  53. # Add tests to detect and suppress accidentally-generated zero-length
  54. # dictionaries.
  55. #
  56. # Revision 1.22  1994/08/31  05:58:43  geoff
  57. # Create directories before installing into them, and be sure to set the
  58. # proper modes on manual pages.
  59. #
  60. # Revision 1.21  1994/05/25  04:29:30  geoff
  61. # Get rid of all references to DEFHASH and defhash.
  62. #
  63. # Revision 1.20  1994/05/24  04:47:33  geoff
  64. # Work around an RS-6000 shell deficiency in environment setting
  65. #
  66. # Revision 1.19  1994/05/17  06:37:36  geoff
  67. # Fix the remove-on-abort code for the derived dictionaries to be more
  68. # robust.
  69. #
  70. # Revision 1.18  1994/02/23  04:52:30  geoff
  71. # Remove dictionaries being built if make is aborted early.
  72. #
  73. # Revision 1.17  1994/02/22  06:09:06  geoff
  74. # Add SHELLDEBUG.
  75. #
  76. # Revision 1.16  1994/02/13  23:55:20  geoff
  77. # Get rid of the temporary line that zapped "english..4" for people who
  78. # had 3.1.00.
  79. #
  80. # Revision 1.15  1994/02/07  08:01:57  geoff
  81. # Allow multiple variants and extradicts
  82. #
  83. # Revision 1.14  1994/02/07  07:08:10  geoff
  84. # Install english.4 with the right name, removing the wrong one if it exists
  85. #
  86. # Revision 1.13  1994/02/07  06:18:18  geoff
  87. # Add dummy else clauses to shell tests to handle Ultrix problems.  Add an
  88. # eval to all sort commands to make sure that MAKE_SORTTMP is handled
  89. # correctly on all systems.
  90. #
  91. # Revision 1.12  1994/01/25  08:50:34  geoff
  92. # Get rid of all old RCS log lines in preparation for the 3.1 release.
  93. #
  94. #
  95.  
  96. SHELL = /bin/sh
  97. MAKE = make
  98.  
  99. CONFIG        =    ../../config.sh
  100. PATHADDER    =    ../..
  101. BUILDHASH    =    ../../buildhash
  102. UNSQ        =    ../../unsq
  103.  
  104. # The following variables should be set by the superior Makefile,
  105. # based on the LANGUAGES variable in config.X.
  106. #
  107. # There are four progressively-larger English dictionaries distributed
  108. # with ispell.  These are named english.sml, english.med, english.lrg,
  109. # and english.xlg.  For each of these, you can also build a "plus"
  110. # version (english.sml+, etc.)  which is created by combining the
  111. # distributed version with an "extra" dictionary defined by EXTRADICT,
  112. # usually /usr/dict/words.  The "plus" versions of dictionaries
  113. # require lots of time and temporary file space; make sure you have
  114. # set TMPDIR appropriately.
  115. #
  116. # The dictionaries to be built are listed in the MASTERDICTS variable,
  117. # separated by spaces.  The hash files to be built (and installed) are
  118. # listed in the HASHFILES variable.  Hash files are named by taking
  119. # the suffix of the dictionary (e.g., "med+"), and adding ".hash".  As
  120. # a general rule, the dictionaries needed to build the HASHFILES must
  121. # be listed in the MASTERDICTS variable.
  122. #
  123. # British/American variants are supported by the VARIANTS variable.
  124. # You should set VARIANTS to one of "american", "british", or
  125. # "altamer".  The latter is a file of alternate American spellings,
  126. # often British-derived.  I recommend against its use.  I also
  127. # recommend against selecting more than one variant, because it tends
  128. # to cause inconsistent or incorrect spellings to be hidden, although
  129. # there is nothing to prevent such an unwise decision.
  130. #
  131. # If you change AFFIXES for english, you should consider also changing
  132. # DEFLANG (in config.X) to match.
  133. #
  134. MASTERDICTS    =    Use_LANGUAGES_from_config.X
  135. HASHFILES    =    Use_LANGUAGES_from_config.X
  136. VARIANTS    =    Use_LANGUAGES_from_config.X
  137. EXTRADICT    =    Use_LANGUAGES_from_config.X
  138.  
  139. #
  140. # The following variables may be overridden by the superior Makefile,
  141. # based on the LANGUAGES variable in config.X.
  142. #
  143. AFFIXES    =    english.aff
  144.  
  145. #
  146. #    Set this to "-vx" in the make command line if you need to
  147. #    debug the complex shell commands.
  148. #
  149. SHELLDEBUG = +vx
  150.  
  151. all:  $(CONFIG)
  152.     @set $(SHELLDEBUG); \
  153.     if [ ! -r english.0 ]; \
  154.     then \
  155.         $(MAKE) SHELLDEBUG=$(SHELLDEBUG) CBUILD= dictcomponents; \
  156.     else \
  157.         : ; \
  158.     fi
  159.     @set $(SHELLDEBUG); \
  160.     for dict in $(MASTERDICTS); do \
  161.         if [ ! -r $$dict ]; \
  162.         then \
  163.         $(MAKE) DBUILD= 'VARIANTS=$(VARIANTS)' \
  164.           'EXTRADICT=$(EXTRADICT)' \
  165.           SHELLDEBUG=$(SHELLDEBUG) $$dict; \
  166.         else \
  167.         : ; \
  168.         fi; \
  169.     done
  170.     $(MAKE) SHELLDEBUG=$(SHELLDEBUG) $(HASHFILES)
  171.  
  172. install: all $(CONFIG)
  173.     @. $(CONFIG); \
  174.       set -x; \
  175.       [ -d $$LIBDIR ]  ||  (mkdir $$LIBDIR; chmod 755 $$LIBDIR); \
  176.       cd $$LIBDIR; rm -f english.aff $(HASHFILES)
  177.     @. $(CONFIG); \
  178.       set -x; \
  179.       cp english.aff $(HASHFILES) $$LIBDIR
  180.     @. $(CONFIG); \
  181.       set -x; \
  182.       cd $$LIBDIR; \
  183.       chmod 644 english.aff $(HASHFILES)
  184.     @. $(CONFIG); \
  185.       set -x; \
  186.       cd $$MAN4DIR; \
  187.       [ -d $$MAN4DIR ]  ||  (mkdir $$MAN4DIR; chmod 755 $$MAN4DIR); \
  188.         rm -f english$$MAN4EXT
  189.     @. $(CONFIG); \
  190.       set -x; \
  191.       cp english.4l $$MAN4DIR/english$$MAN4EXT; \
  192.       chmod 644 $$MAN4DIR/english$$MAN4EXT
  193.  
  194. #
  195. #    Dependencies to build extra hash files
  196. #
  197. allhashes:    normhashes plushashes
  198. normhashes:    sml.hash med.hash lrg.hash xlg.hash
  199. plushashes:    sml+.hash med+.hash lrg+.hash xlg+.hash
  200.  
  201. #
  202. # Note that we don't use $(MAKE) in the following dependencies.  There
  203. # is a good reason for this -- if we did, "make -n" would still run
  204. # buildhash.
  205. #
  206. sml.hash:    $(CONFIG) $(BUILDHASH)
  207. sml.hash:    $(AFFIXES)
  208. sml.hash:    english.sml
  209.     rm -f sml.hash
  210.     @set +e; \
  211.     . $(CONFIG); \
  212.     set -ex; \
  213.     $(BUILDHASH) english.sml $(AFFIXES) $@
  214.  
  215. sml+.hash:    $(CONFIG) $(BUILDHASH)
  216. sml+.hash:    $(AFFIXES)
  217. sml+.hash:    english.sml+
  218.     rm -f sml+.hash
  219.     @set +e; \
  220.     . $(CONFIG); \
  221.     set -ex; \
  222.     $(BUILDHASH) english.sml+ $(AFFIXES) $@
  223.  
  224. med.hash:    $(BUILDHASH) $(CONFIG)
  225. med.hash:    $(AFFIXES)
  226. med.hash:    english.med
  227.     rm -f med.hash
  228.     @set +e; \
  229.     . $(CONFIG); \
  230.     set -ex; \
  231.     $(BUILDHASH) english.med $(AFFIXES) $@
  232.  
  233. med+.hash:    $(BUILDHASH) $(CONFIG)
  234. med+.hash:    $(AFFIXES)
  235. med+.hash:    english.med+
  236.     rm -f med+.hash
  237.     @set +e; \
  238.     . $(CONFIG); \
  239.     set -ex; \
  240.     $(BUILDHASH) english.med+ $(AFFIXES) $@
  241.  
  242. lrg.hash:    $(BUILDHASH) $(CONFIG)
  243. lrg.hash:    $(AFFIXES)
  244. lrg.hash:    english.lrg
  245.     rm -f lrg.hash
  246.     @set +e; \
  247.     . $(CONFIG); \
  248.     set -ex; \
  249.     $(BUILDHASH) english.lrg $(AFFIXES) $@
  250.  
  251. lrg+.hash:    $(BUILDHASH) $(CONFIG)
  252. lrg+.hash:    $(AFFIXES)
  253. lrg+.hash:    english.lrg+
  254.     rm -f lrg+.hash
  255.     @set +e; \
  256.     . $(CONFIG); \
  257.     set -ex; \
  258.     $(BUILDHASH) english.lrg+ $(AFFIXES) $@
  259.  
  260. xlg.hash:    $(BUILDHASH) $(CONFIG)
  261. xlg.hash:    $(AFFIXES)
  262. xlg.hash:    english.xlg
  263.     rm -f xlg.hash
  264.     @set +e; \
  265.     . $(CONFIG); \
  266.     set -ex; \
  267.     $(BUILDHASH) english.xlg $(AFFIXES) $@
  268.  
  269. xlg+.hash:    $(BUILDHASH) $(CONFIG)
  270. xlg+.hash:    $(AFFIXES)
  271. xlg+.hash:    english.xlg+
  272.     rm -f xlg+.hash
  273.     @set +e; \
  274.     . $(CONFIG); \
  275.     set -ex; \
  276.     $(BUILDHASH) english.xlg+ $(AFFIXES) $@
  277.  
  278. #
  279. #    The eight dictionaries, english.sml through english.xlg+, are
  280. #    built by the following dependencies.  The macros "CBUILD" and
  281. #    "DBUILD" are a sneaky trick used to keep make from trying to
  282. #    run munchlist every time a minor change is made to one of the
  283. #    C programs.  If you define these macros as null, "make all"
  284. #    will automatically build the dictionaries.  If you leave them
  285. #    with their default definitions, "make all" will leave the
  286. #    dictionaries alone, and you will have to type something like
  287. #    "make buildenglish.med+" to build the dictionary using
  288. #    munchlist.
  289. #
  290. #    Why two macros?  So you can delete {eng,amer,altamer,brit}.[012].??
  291. #    to save space, and still type "make DBUILD= all".
  292. #
  293. #    The following dependencies are convenient ways to make some or
  294. #    all of the dictionaries.
  295. #
  296. BUILD    =    build
  297. CBUILD    =    $(BUILD)
  298. DBUILD    =    $(BUILD)
  299.  
  300. alldicts:    normdicts plusdicts
  301. normdicts:    $(DBUILD)english.sml
  302. normdicts:    $(DBUILD)english.med
  303. normdicts:    $(DBUILD)english.lrg
  304. normdicts:    $(DBUILD)english.xlg
  305. plusdicts:    $(DBUILD)english.sml+
  306. plusdicts:    $(DBUILD)english.med+
  307. plusdicts:    $(DBUILD)english.lrg+
  308. plusdicts:    $(DBUILD)english.xlg+
  309.  
  310. dictcomponents:    $(CBUILD)english.0
  311. dictcomponents:    $(CBUILD)english.1
  312. dictcomponents:    $(CBUILD)english.2
  313. dictcomponents:    $(CBUILD)english.3
  314. dictcomponents: $(CBUILD)american.0
  315. dictcomponents: $(CBUILD)american.1
  316. dictcomponents:    $(CBUILD)american.2
  317. dictcomponents: $(CBUILD)altamer.0
  318. dictcomponents:    $(CBUILD)altamer.1
  319. dictcomponents:    $(CBUILD)altamer.2
  320. dictcomponents: $(CBUILD)british.0
  321. dictcomponents:    $(CBUILD)british.1
  322. dictcomponents:    $(CBUILD)british.2
  323.  
  324. $(CBUILD)english.0:    $(UNSQ) eng.0.??
  325.     cat eng.0.?? | $(UNSQ) > english.0
  326.  
  327. $(CBUILD)english.1:    $(UNSQ) eng.1.??
  328.     cat eng.1.?? | $(UNSQ) > english.1
  329.  
  330. $(CBUILD)english.2:    $(UNSQ) eng.2.??
  331.     cat eng.2.?? | $(UNSQ) > english.2
  332.  
  333. $(CBUILD)english.3:    $(UNSQ) eng.3.??
  334.     cat eng.3.?? | $(UNSQ) > english.3
  335.  
  336. $(CBUILD)american.0:    $(UNSQ) amer.0.??
  337.     cat amer.0.?? | $(UNSQ) > american.0
  338.  
  339. $(CBUILD)american.1:    $(UNSQ) amer.1.??
  340.     cat amer.1.?? | $(UNSQ) > american.1
  341.  
  342. $(CBUILD)american.2:    $(UNSQ) amer.2.??
  343.     cat amer.2.?? | $(UNSQ) > american.2
  344.  
  345. $(CBUILD)altamer.0:    $(UNSQ) altamer.0.??
  346.     cat altamer.0.?? | $(UNSQ) \
  347.       > altamer.0
  348.  
  349. $(CBUILD)altamer.1:    $(UNSQ) altamer.1.??
  350.     cat altamer.1.?? | $(UNSQ) \
  351.       > altamer.1
  352.  
  353. $(CBUILD)altamer.2:    $(UNSQ) altamer.2.??
  354.     cat altamer.2.?? | $(UNSQ) \
  355.       > altamer.2
  356.  
  357. $(CBUILD)british.0:    $(UNSQ) brit.0.??
  358.     cat brit.0.?? | $(UNSQ) > british.0
  359.  
  360. $(CBUILD)british.1:    $(UNSQ) brit.1.??
  361.     cat brit.1.?? | $(UNSQ) > british.1
  362.  
  363. $(CBUILD)british.2:    $(UNSQ) brit.2.??
  364.     cat brit.2.?? | $(UNSQ) > british.2
  365.  
  366. $(DBUILD)english.sml:    $(CONFIG)
  367. $(DBUILD)english.sml:    english.0
  368. $(DBUILD)english.sml:    american.0
  369. $(DBUILD)english.sml:    altamer.0
  370. $(DBUILD)english.sml:    british.0
  371.     @. $(CONFIG); \
  372.         set $(SHELLDEBUG); \
  373.         dicts=""; \
  374.         for i in english $(VARIANTS); do \
  375.         dicts="$$dicts $$i.0"; \
  376.         done; \
  377.         trap "rm -f english.sml" 1 2 15; \
  378.         set -x; \
  379.         eval sort -u -t/ +0f -1 +0 $$MAKE_SORTTMP -o english.sml $$dicts
  380.  
  381. $(DBUILD)english.sml+:    $(CONFIG) $(EXTRADICT)
  382. $(DBUILD)english.sml+:    english.0
  383. $(DBUILD)english.sml+:    american.0
  384. $(DBUILD)english.sml+:    altamer.0
  385. $(DBUILD)english.sml+:    british.0
  386.     @dicts="$(EXTRADICT)"; \
  387.     set $(SHELLDEBUG); \
  388.     for i in english $(VARIANTS); do \
  389.         dicts="$$dicts $$i.0"; \
  390.     done; \
  391.     trap "rm -f english.sml+" 1 2 15; \
  392.     set -x; \
  393.     PATH=$(PATHADDER):$$PATH; \
  394.     export PATH; \
  395.     munchlist -v -l $(AFFIXES) $$dicts \
  396.       > english.sml+ \
  397.         ||  rm -f english.sml+
  398.     test -s english.sml+ \
  399.       ||  (echo 'error: zero-length dictionary generated'; \
  400.         rm -f english.sml+; exit 1)
  401.  
  402. $(DBUILD)english.med:    $(CONFIG)
  403. $(DBUILD)english.med:    english.0
  404. $(DBUILD)english.med:    american.0
  405. $(DBUILD)english.med:    altamer.0
  406. $(DBUILD)english.med:    british.0
  407. $(DBUILD)english.med:    english.1
  408. $(DBUILD)english.med:    american.1
  409. $(DBUILD)english.med:    altamer.1
  410. $(DBUILD)english.med:    british.1
  411.     @. $(CONFIG); \
  412.         set $(SHELLDEBUG); \
  413.         dicts=""; \
  414.         for i in english $(VARIANTS); do \
  415.         dicts="$$dicts $$i.[01]"; \
  416.         done; \
  417.         trap "rm -f english.med" 1 2 15; \
  418.         set -x; \
  419.         eval sort -u -t/ +0f -1 +0 $$MAKE_SORTTMP -o english.med $$dicts
  420.  
  421. $(DBUILD)english.med+:    $(CONFIG) $(EXTRADICT)
  422. $(DBUILD)english.med+:    english.0
  423. $(DBUILD)english.med+:    american.0
  424. $(DBUILD)english.med+:    altamer.0
  425. $(DBUILD)english.med+:    british.0
  426. $(DBUILD)english.med+:    english.1
  427. $(DBUILD)english.med+:    american.1
  428. $(DBUILD)english.med+:    altamer.1
  429. $(DBUILD)english.med+:    british.1
  430.     @dicts="$(EXTRADICT)"; \
  431.     set $(SHELLDEBUG); \
  432.     for i in english $(VARIANTS); do \
  433.         dicts="$$dicts $$i.[01]"; \
  434.     done; \
  435.     trap "rm -f english.med+" 1 2 15; \
  436.     set -x; \
  437.     PATH=$(PATHADDER):$$PATH; \
  438.     export PATH; \
  439.     munchlist -v -l $(AFFIXES) $$dicts \
  440.       > english.med+ \
  441.         ||  rm -f english.med+
  442.     test -s english.med+ \
  443.       ||  (echo 'error: zero-length dictionary generated'; \
  444.         rm -f english.med+; exit 1)
  445.  
  446. $(DBUILD)english.lrg:    $(CONFIG)
  447. $(DBUILD)english.lrg:    english.0
  448. $(DBUILD)english.lrg:    american.0
  449. $(DBUILD)english.lrg:    altamer.0
  450. $(DBUILD)english.lrg:    british.0
  451. $(DBUILD)english.lrg:    english.1
  452. $(DBUILD)english.lrg:    american.1
  453. $(DBUILD)english.lrg:    altamer.1
  454. $(DBUILD)english.lrg:    british.1
  455. $(DBUILD)english.lrg:    english.2
  456. $(DBUILD)english.lrg:    american.2
  457. $(DBUILD)english.lrg:    altamer.2
  458. $(DBUILD)english.lrg:    british.2
  459.     @. $(CONFIG); \
  460.         set $(SHELLDEBUG); \
  461.         dicts=""; \
  462.         for i in english $(VARIANTS); do \
  463.         dicts="$$dicts $$i.[012]"; \
  464.         done; \
  465.         trap "rm -f english.lrg" 1 2 15; \
  466.         set -x; \
  467.         eval sort -u -t/ +0f -1 +0 $$MAKE_SORTTMP -o english.lrg $$dicts
  468.  
  469. $(DBUILD)english.lrg+:    $(CONFIG) $(EXTRADICT)
  470. $(DBUILD)english.lrg+:    english.0
  471. $(DBUILD)english.lrg+:    american.0
  472. $(DBUILD)english.lrg+:    altamer.0
  473. $(DBUILD)english.lrg+:    british.0
  474. $(DBUILD)english.lrg+:    english.1
  475. $(DBUILD)english.lrg+:    american.1
  476. $(DBUILD)english.lrg+:    altamer.1
  477. $(DBUILD)english.lrg+:    british.1
  478. $(DBUILD)english.lrg+:    english.2
  479. $(DBUILD)english.lrg+:    american.2
  480. $(DBUILD)english.lrg+:    altamer.2
  481. $(DBUILD)english.lrg+:    british.2
  482.     @dicts="$(EXTRADICT)"; \
  483.     set $(SHELLDEBUG); \
  484.     for i in english $(VARIANTS); do \
  485.         dicts="$$dicts $$i.[012]"; \
  486.     done; \
  487.     trap "rm -f english.lrg+" 1 2 15; \
  488.     set -x; \
  489.     PATH=$(PATHADDER):$$PATH; \
  490.     export PATH; \
  491.     munchlist -v -l $(AFFIXES) $$dicts \
  492.       > english.lrg+ \
  493.         ||  rm -f english.lrg+
  494.     test -s english.lrg+ \
  495.       ||  (echo 'error: zero-length dictionary generated'; \
  496.         rm -f english.lrg+; exit 1)
  497.  
  498. $(DBUILD)english.xlg:    $(CONFIG)
  499. $(DBUILD)english.xlg:    english.0
  500. $(DBUILD)english.xlg:    american.0
  501. $(DBUILD)english.xlg:    altamer.0
  502. $(DBUILD)english.xlg:    british.0
  503. $(DBUILD)english.xlg:    english.1
  504. $(DBUILD)english.xlg:    american.1
  505. $(DBUILD)english.xlg:    altamer.1
  506. $(DBUILD)english.xlg:    british.1
  507. $(DBUILD)english.xlg:    english.2
  508. $(DBUILD)english.xlg:    american.2
  509. $(DBUILD)english.xlg:    altamer.2
  510. $(DBUILD)english.xlg:    british.2
  511. $(DBUILD)english.xlg:    english.3
  512.     @. $(CONFIG); \
  513.         set $(SHELLDEBUG); \
  514.         dicts=""; \
  515.         for i in english $(VARIANTS); do \
  516.         dicts="$$dicts $$i.[0123]"; \
  517.         done; \
  518.         trap "rm -f english.xlg" 1 2 15; \
  519.         set -x; \
  520.         eval sort -u -t/ +0f -1 +0 $$MAKE_SORTTMP -o english.xlg $$dicts
  521.  
  522. $(DBUILD)english.xlg+:    $(CONFIG) $(EXTRADICT)
  523. $(DBUILD)english.xlg+:    english.0
  524. $(DBUILD)english.xlg+:    american.0
  525. $(DBUILD)english.xlg+:    altamer.0
  526. $(DBUILD)english.xlg+:    british.0
  527. $(DBUILD)english.xlg+:    english.1
  528. $(DBUILD)english.xlg+:    american.1
  529. $(DBUILD)english.xlg+:    altamer.1
  530. $(DBUILD)english.xlg+:    british.1
  531. $(DBUILD)english.xlg+:    english.2
  532. $(DBUILD)english.xlg+:    american.2
  533. $(DBUILD)english.xlg+:    altamer.2
  534. $(DBUILD)english.xlg+:    british.2
  535. $(DBUILD)english.xlg+:    english.3
  536.     @dicts="$(EXTRADICT)"; \
  537.     set $(SHELLDEBUG); \
  538.     for i in english $(VARIANTS); do \
  539.         dicts="$$dicts $$i.[0123]"; \
  540.     done; \
  541.     trap "rm -f english.xlg+" 1 2 15; \
  542.     set -x; \
  543.     PATH=$(PATHADDER):$$PATH; \
  544.     export PATH; \
  545.     munchlist -v -l $(AFFIXES) $$dicts \
  546.       > english.xlg+ \
  547.         ||  rm -f english.xlg+
  548.     test -s english.xlg+ \
  549.       ||  (echo 'error: zero-length dictionary generated'; \
  550.         rm -f english.xlg+; exit 1)
  551.  
  552. #
  553. #    The following dependency can be executed when ispell is unpacked,
  554. #    to unpack the dictionaries.
  555. #
  556. unpack:    $(UNSQ)
  557.     $(MAKE) CBUILD= SHELLDEBUG=$(SHELLDEBUG) dictcomponents
  558.     $(MAKE) SHELLDEBUG=$(SHELLDEBUG) kitclean
  559.  
  560. $(UNSQ):
  561.     set +e; \
  562.     set $(SHELLDEBUG); \
  563.     if [ ! -x $(UNSQ) ]; \
  564.     then \
  565.         set -e; \
  566.         cd ../..; \
  567.         $(MAKE) unsq; \
  568.     else \
  569.         : ; \
  570.     fi
  571.  
  572. clean:
  573.     rm -f core *.hash *.stat *.cnt
  574.  
  575. #
  576. #    The following target allows you to clean out the leftover raw
  577. #    files gotten from unpacking the kit.  It makes sure that you
  578. #    have the combined files first, so it may take a little while
  579. #    to run.
  580. #
  581. kitclean:    $(UNSQ)
  582.     $(MAKE) CBUILD= SHELLDEBUG=$(SHELLDEBUG) dictcomponents
  583.     rm -f eng.[0123].?? amer.[012].?? altamer.[012].?? brit.[012].??
  584.  
  585. #
  586. #    The following target allows you to clean out the combined
  587. #    dictionary files.
  588. #
  589. dictclean:
  590.     rm -f english.sml english.sml+ english.med english.med+
  591.     rm -f english.lrg english.lrg+ english.xlg english.xlg+
  592.